# 语法格式一：
#      try:
#          检测的代码块
#
#      except 异常类型：
#          如果检测到异常，执行这个位置的代码
# 可以声明捕获异常的类型，但是遇到其他的异常类型依然会报错，无法捕获异常

# try:
#     a
# except NameError:    # TypeError 不是这个类型的错误依然会报错
#     print('这是一个错误')
#
# # 当要捕获多个异常类型时，可以将捕获异常的类型名字，放在except后，需要使用元组的形式编写
# # 方式一
# try:
#     a
# except (NameError,TypeError):    # TypeError 不是这个类型的错误依然会报错
#     print('这是一个错误')
#
# # 方式二
# e = (NameError,TypeError)
# # 查看数据类型
# # print(type(e))
# try:
#     a
# except e:   # TypeError 不是这个类型的错误依然会报错
#     print('这是一个错误')

# 取别名
# try:
#     a
# except NameError as error:
#     # as error 相当于把异常信息保存在error里面，error变量名，可以自己定义（as 取别名）
#     print(error)

# 万能异常 Exception
# try:
#     a = 10
# except Exception as error:
#     print('这是一个错误')
#     print('报错信息', error)